

user_money = 1000.00

# 商品列表（每个商品是包含名称和价格的列表）
goods = [
    ["苹果", 8.5, 3],
    ["香蕉", 4.5, 3],
    ["牛奶", 12.0, 3],
    ["面包", 7.0, 3],
    ["鸡蛋", 1.5, 3],
    ["牛肉", 38.0, 3],
    ["空调",500, 3]
]

# 初始化购物车（空列表）
shopping_cart = []

print("===== 欢迎来到超市购物系统 =====")
print(f"您的账户余额: ￥{user_money:.2f}")
print("提示：输入商品编号购物，输入Q结算退出")

# 主购物循环
while True:
    # 显示商品列表
    print("\n====== 商品清单 ======")
    for i in range(len(goods)):
        print(f"{i + 1}. {goods[i][0]:5} ￥{goods[i][1]:.2f} \t{goods[i][2]}")
    print("======================")

    # 获取用户输入
    choice = input("请输入商品编号 (输入Q结算退出): ").strip()

    # 退出条件
    if choice.upper() == 'Q':
        break

    # 检查输入是否有效
    if choice.isdigit():
        choice_idx = int(choice) - 1
        # 检查商品是否存在
        if 0 <= choice_idx < len(goods):
            #创建一个新的selected列表来接受选择的商品
            selected = [ goods[choice_idx][0],goods[choice_idx][1],1 ]
            price = selected[1]
            num = 1
            # 检查余额是否足够
            if user_money >= price and goods[choice_idx][2] > 0:
                # 添加到购物车
                shopping_cart.append(selected)
                # 扣款
                user_money -= price
                print(f"✅ 购买成功！添加 {selected[0]} 到购物车")
                print(f"卡余额还剩{user_money}")
                #商品的数量减去1
                goods[choice_idx][2]= goods[choice_idx][2]-1
            elif goods[choice_idx][2] <= 0:
                print(f"❌ 商品已售光！")
                print(f"当前余额: ￥{user_money:.2f}")
            elif user_money < price:
                # 余额不足处理
                print(f"❌ 余额不足！{selected[0]} 需要 ￥{price:.2f}")
        else:
            print("⚠ 无效编号！请选择1-{}之间的数字".format(len(goods)))
    else:
        print("⚠ 无效输入！请输入商品编号或Q退出")

# 打印购物小票
print("\n====== 购物小票 ======")
if not shopping_cart:
    print("购物车为空，未购买任何商品！")
else:
    total = 0.0
    print("商品名称    价格       数量")
    print("----------------------")
    for item in shopping_cart:
        print(f"{item[0]:6}  ￥{item[1]:.2f}     \t{item[2]}")
        total += item[1]
    print("----------------------")
    print(f"总计:      ￥{total:.2f}")
    print(f"账户余额:  ￥{user_money:.2f}")
print("感谢您的光临！")
print("======================")